#pragma once

#define SIZE 1024

#define FLUSH_NONE 0//不缓冲
#define FLUSH_LINE 1//行缓冲
#define FLUSH_FULL 2//全缓冲

struct IO_FILE
{
  int flag;//刷新方式
  int fileno;//文件描述符
  char outbuffer[SIZE];//缓冲区
  int size;//有效数量
  int cap;//容量
};

typedef struct IO_FILE mFILE;

mFILE *mfopen(const char *filename,const char *mode);
int mfwrite(const void *ptr, int num, mFILE *stream);
void mfflush(mFILE *stream);
void mfclose(mFILE *stream);
void mprintf(const char* str,const char* s,int num);
